package com.weixing.mall.provider.model.dto;

import com.weixing.mall.base.constant.DatePattern;
import com.weixing.mall.base.enums.IsEnableEnum;
import com.weixing.mall.provider.api.model.enums.*;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import javax.validation.constraints.NotNull;
import java.math.BigDecimal;
import java.util.Date;

/**
 * 代理商基本信息
 *
 * @Author: kfc
 * @Description: <br/>
 * Date:Create in 2019/9/9 15:17
 * @Modified By:
 */
@Data
@ApiModel(description = "代理商基本信息")
public class AgentBasicEditDto {

    @ApiModelProperty(value = "id")
    private Long id;
    @ApiModelProperty(value = "密码")
    private String password;
    @ApiModelProperty(value = "代理商名称")
    private String agentName;
    @ApiModelProperty(value = "代理商昵称")
    private String nickName;
    @ApiModelProperty(value = "微信号")
    private String wechatNum;
    @ApiModelProperty(value = "微信昵称")
    private String wechatNickName;
    @ApiModelProperty(value = "邮箱")
    private String email;
    @ApiModelProperty(value = "手机号")
    private String mobile;
    @ApiModelProperty(value = "代理商性质")
    @NotNull(message = "代理商性质不能为空")
    private IsOfficialEnum isOfficial;
    @ApiModelProperty(value = "是否活跃")
    @NotNull(message = "是否活跃不能为空")
    private IsActiveEnum isActive;
    @ApiModelProperty(value = "状态")
    @NotNull(message = "代理商状态不能为空")
    private IsEnableEnum isEnable;
    @ApiModelProperty(value = "是否拥有广告权限")
    @NotNull(message = "是否拥有广告权限不能为空")
    private IsAdsAuthEnum isAdsAuth;
    @ApiModelProperty(value = "代理商类型")
    @NotNull(message = "代理商类型不能为空")
    private AgentTypeEnum agentType;
    @ApiModelProperty(value = "代理商等级")
    @NotNull(message = "代理商等级不能为空")
    private AgentLevelEnum agentLevel;
    @ApiModelProperty(value = "备注")
    private String remark;
    @ApiModelProperty(value = "按年缴费金额")
    private BigDecimal agencyFeeYear;
    @ApiModelProperty(value = "按月缴费金额")
    private BigDecimal agencyFeeMonth;

    private BigDecimal money;

    private String endTime;
    @ApiModelProperty(value = "代理折扣")
    private BigDecimal discount;

    @ApiModelProperty(value = "可预约广告数量")
    private Integer adsLimit;

    /**
     * 代理商到期时间
     */
    @ApiModelProperty(value = "代理商到期时间  yyyy-MM-dd")
    @DateTimeFormat(pattern = DatePattern.NORM_DATE_PATTERN)
    private Date maturityTime;
    /**
     * 代理商生效时间
     */
    @ApiModelProperty(value = "代理商生效时间  yyyy-MM-dd")
    @DateTimeFormat(pattern = DatePattern.NORM_DATE_PATTERN)
    private Date effectTime;

    public static void main(String[] args) {
        System.out.println(String.format("%08d", 6));
    }
}
